A magnetic tape recording/reproducing apparatus is widely used as an external memory device of a computer system. Information is recorded on or read out from a plurality of tracks formed on a magnetic tape in a parallel form. It is desired that a magnetic tape recording/reproducing apparatus have a large storage capacity and high reliability.
In a system such as a magnetic tape recording/reproducing apparatus in which information on a plurality of tracks is transferred in parallel form, it is possible to correct errors on up to a predetermined number of tracks by using an error correction code (ECC) or error check information of a parity check code recorded on some tracks. Further, such a conventional system uses an error track pointer so that error correction capability is increased. Normally, the error track pointer is classified into an internal pointer and an external pointer. The internal pointer is provided for each track and generated by a syndrome process. The external pointer is generated by the occurrence of a signal loss resulting from a large defect on a recording medium, the presence of an out-of-phase error and/or the occurrence of a non-tolerable data pattern.
The external pointer is classified into an invalid pointer, a level pointer and a persistent pointer, which are generated by the following detection results. The invalid pointer is generated when data having a pattern other than a predetermined data pattern is detected. The level pointer is generated when a reproduced analog signal is less than a predetermined level. The persistent pointer is generated when a predetermined number of errors is successively detected or a skew error is detected. In this manner, each error track pointer definitely indicates a track on which an error takes place or a track having a possibility of the occurrence of error.
Most errors occur due to a large defect on the magnetic tape, and most error tracks are indicated by the external pointers. When no external pointer is generated, it is possible to correct errors on only a small number of tracks. On the other hand, when an external pointer is generated, a syndrome process is carried out on the assumption that the track indicated by the external pointer is an error track, which means that there is an error thereon. Thus, it is possible to correct errors on an increased number of tracks.
The number of error tracks to be corrected depends on the number of redundant bits so that there is a limit on the number of tracks having errors to be corrected. When error track pointers exceeding the limited number of tracks to be corrected are generated, errors are no longer corrected. Conventionally, error track pointers are reset at predetermined intervals so that the number of error track pointers which an error correction circuit to be notified about is does not become greater than the predetermined number of tracks to be corrected. For example, external pointers are reset for every re-synchronous frame when information transfer conforms to the 18-track GCR (group coded recorder) system.
However, there is a possibility that an error cannot be corrected immediately after external pointers are reset because of an extremely small number of generated external pointers. In this case, the same data block is read again and error correction is retried. This leads to a decrease in operational speed.